home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / misc / libx11inc.lha / X11 / Xm / ScrollBarP.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-13  |  3.4 KB  |  173 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC.
  3.  * ALL RIGHTS RESERVED
  4. */ 
  5. /*   $RCSfile: ScrollBarP.h,v $ $Revision: 1.16 $ $Date: 92/05/14 12:56:39 $ */
  6. /*
  7. *  (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
  8. /*
  9. *  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  10. #ifndef _XmScrollBarP_h
  11. #define _XmScrollBarP_h
  12.  
  13.  
  14. #include <Xm/ScrollBar.h>
  15. #include <Xm/PrimitiveP.h>
  16.  
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20.  
  21. /*  Minimum slider width or height  */
  22.  
  23. #define MIN_SLIDER_THICKNESS    1
  24. #define MIN_SLIDER_LENGTH    6
  25.  
  26.  
  27. /*  ScrollBar class structure  */
  28.  
  29. typedef struct _XmScrollBarClassPart
  30. {
  31.    int foo;    /*  No new fields needed  */
  32. } XmScrollBarClassPart;
  33.  
  34.  
  35. /*  Full class record declaration for CheckBox class  */
  36.  
  37. typedef struct _XmScrollBarClassRec
  38. {
  39.    CoreClassPart        core_class;
  40.    XmPrimitiveClassPart primitive_class;
  41.    XmScrollBarClassPart scrollBar_class;
  42. } XmScrollBarClassRec;
  43.  
  44. externalref XmScrollBarClassRec xmScrollBarClassRec;
  45.  
  46.  
  47. /*  The ScrollBar instance record  */
  48.  
  49. typedef struct _XmScrollBarPart
  50. {
  51.    int value;
  52.    int minimum;
  53.    int maximum;
  54.    int slider_size;
  55.  
  56.    unsigned char orientation;
  57.    unsigned char processing_direction;
  58.    Boolean show_arrows;
  59.  
  60.    int increment;
  61.    int page_increment;
  62.  
  63.    int initial_delay;
  64.    int repeat_delay;
  65.  
  66.    XtCallbackList value_changed_callback;
  67.    XtCallbackList increment_callback;
  68.    XtCallbackList decrement_callback;
  69.    XtCallbackList page_increment_callback;
  70.    XtCallbackList page_decrement_callback;
  71.    XtCallbackList to_top_callback;
  72.    XtCallbackList to_bottom_callback;
  73.    XtCallbackList drag_callback;
  74.  
  75.    /* obsolete */
  76.    GC unhighlight_GC;
  77.    /***********/
  78.  
  79.    GC foreground_GC;
  80.    Pixel trough_color;
  81.  
  82.    Drawable pixmap;
  83.    Boolean  sliding_on;
  84.    Boolean  etched_slider;
  85.    int saved_value;
  86.  
  87.    unsigned char flags;
  88.  
  89.    unsigned char change_type;
  90.    XtIntervalId timer;
  91.  
  92.    short initial_x;
  93.    short initial_y;
  94.    short separation_x;
  95.    short separation_y;
  96.  
  97.    short slider_x;
  98.    short slider_y;
  99.    short slider_width;
  100.    short slider_height;
  101.  
  102.    short slider_area_x;
  103.    short slider_area_y;
  104.    short slider_area_width;
  105.    short slider_area_height;
  106.  
  107.    short arrow1_x;
  108.    short arrow1_y;
  109.    unsigned char arrow1_orientation;
  110.    Boolean arrow1_selected;
  111.  
  112.    short arrow2_x;
  113.    short arrow2_y;
  114.    unsigned char arrow2_orientation;
  115.    Boolean arrow2_selected;
  116.  
  117.    short arrow_width;
  118.    short arrow_height;
  119.  
  120.    /*  Obsolete fields */
  121.    short arrow1_top_count;
  122.    short arrow1_cent_count;
  123.    short arrow1_bot_count;
  124.  
  125.    XRectangle * arrow1_top;
  126.    XRectangle * arrow1_cent;
  127.    XRectangle * arrow1_bot;
  128.  
  129.    short arrow2_top_count;
  130.    short arrow2_cent_count;
  131.    short arrow2_bot_count;
  132.  
  133.    XRectangle * arrow2_top;
  134.    XRectangle * arrow2_cent;
  135.    XRectangle * arrow2_bot;
  136.    /***********/
  137.  
  138.  
  139.    /* new for 1.2 */
  140.    GC    unavailable_GC;
  141. } XmScrollBarPart;
  142.  
  143.  
  144. /*  Full instance record declaration  */
  145.  
  146. typedef struct _XmScrollBarRec
  147. {
  148.    CorePart       core;
  149.    XmPrimitivePart primitive;
  150.    XmScrollBarPart scrollBar;
  151. } XmScrollBarRec;
  152.  
  153.  
  154. /********    Private Function Declarations    ********/
  155. #ifdef _NO_PROTO
  156.  
  157. extern void _XmSetEtchedSlider() ;
  158.  
  159. #else
  160.  
  161. extern void _XmSetEtchedSlider( 
  162.                         XmScrollBarWidget sbw) ;
  163.  
  164. #endif /* _NO_PROTO */
  165. /********    End Private Function Declarations    ********/
  166.  
  167. #ifdef __cplusplus
  168. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  169. #endif
  170.  
  171. #endif /* _XmScrollBarP_h */
  172. /* DON'T ADD ANYTHING AFTER THIS #endif */
  173.